//====================================================================
// File : BlueColorTheme.java
//
//--------------------------------------------------------------------
// Copyright (C) 2005, 2006 by Daniel Gheorghian
// All rights reserved

// Use and distribute freely, except: don't remove my name from the 
// source or documentation (don't take credit for my work), mark your 
// changes (don't get me blamed for your possible bugs),don't alter 
// or remove this notice.

// No warrantee of any kind, express or implied, is included with this 
// software; use at your own risk, responsibility for damages (if any) 
// to anyone resulting from the use of this software rests entirely 
// with the user.

// Send bug reports, bug fixes, enhancements, requests, flames, etc., 
// and I'll try to keep a version up to date.  I can be reached at: 
// daniel.gheorghian@gmail.com
//====================================================================
//
// Ver      Date
// -------  -------------
// 1.0      Sep 16, 2006


package com.ds.theme;

import java.awt.*;

public class BlueColorTheme implements ColorTheme
{
	private Paint backgoundPaint = null;
	private Paint darkerBackgoundPaint = null;
	private Paint brighterBackgroundPaint = null;
	private Paint backgroundSelectedPaint = null;
	private Paint foregroundPaint = null;
	private Paint foregroundSelectedPaint = null;
	private Paint foregroundDisabledPaint = null;
	private Color backgroundColor1 = new Color( 138, 161, 177 );
	private Color backgroundColor2 = new Color( 199, 217, 229 );

	public BlueColorTheme()
	{
		this( new Dimension() );
	}

	public BlueColorTheme( Dimension dim )
	{
		update( dim );

		this.foregroundPaint = new Color( 77, 77, 77 );
		this.backgroundSelectedPaint = this.backgoundPaint;
		this.foregroundSelectedPaint = Color.BLACK;
		this.foregroundDisabledPaint = new Color( 185, 185, 185 );
	}

	public void update(Dimension dim)
	{
		this.backgoundPaint = new GradientPaint( dim.width / 2, 0, backgroundColor1, dim.width / 2,
//												 dim.height, new Color( 169, 187, 199 ), false);
                                                 dim.height, backgroundColor2, false );

		this.darkerBackgoundPaint = new GradientPaint( dim.width / 2, 0, backgroundColor1.darker(), dim.width / 2,
		                                               dim.height, backgroundColor2.darker(), false );

		this.brighterBackgroundPaint = new GradientPaint( dim.width / 2, 0, backgroundColor1.brighter(), dim.width / 2,
		                                                  dim.height, backgroundColor2.brighter(), false );
	}

	public Paint darkerBackgroundPaint()
	{
		return darkerBackgoundPaint;
	}

	public Paint brighterBackgroundPaint()
	{
		return brighterBackgroundPaint;
	}

	public Paint getBackgroundPaint()
	{
		return this.backgoundPaint;
	}

	public Paint getForegroundPaint()
	{
		return this.foregroundPaint;
	}

	public Paint getBackgroundSelectedPaint()
	{
		return this.backgroundSelectedPaint;
	}

	public Paint getForegroundSelectedPaint()
	{
		return this.foregroundSelectedPaint;
	}

	public Paint getForegroundDisabledPaint()
	{
		return this.foregroundDisabledPaint;
	}
}
